package main

// 检查是否可以由多个子串重复形成
func repeatedSubstringPattern(s string) bool {
	n := len(s)
	// s'一定是s的前缀
	for i := 1; i*2 <= n; i++ {
		if n%i == 0 { // 倍数，可能是前缀
			match := true
			for j := i; j < n; j++ {
				if s[j] != s[j-i] { // 每一小段上相同位置
					match = false
					break
				}
			}
			if match {
				return true
			}
		}
	}
	return false
}
